In some embodiments of the present invention relates to a method and a multi-node system for matching between nodes and, more particularly, but not exclusively to a method and a distributed system for finding a match between static and dynamic network nodes, such as mobile communication terminals.
In multi-agent networks (MANs), such as multi-agent systems (MASs), nodes may cooperate with one another. In such a system, a matchmaking process is used for allowing two or more nodes to find each other and/or to obtain services, to create groups, and/or to form coalition from one or more nodes which are connected to the network.
Currently, three general approaches are commonly used for addressing the matchmaking problem. In the first approach, which may be referred to as a centralized approach or yellow pages approach, a node, such as a central server, hosts the addresses of all the nodes in the system. In use, a node that wants to access a certain kind of resource that is hosted in one of the nodes requests from the central server to provide it with an address of the node. The central server checks its database and informs the node about the matching resources.
The second approach uses a number of nodes, which may be referred to as middle nodes and/or super peers, which are used for interfacing between clients and resources. In use, a client node, which wants to access a certain kind of resource node, requests the nearest middle node to provide it with an address of such a resource node. The middle node tries to match such a resource and forwards the request to other middle nodes if it fails. Such an approach may be used to overcome the scalability problems of the first approach.
The third approach uses all the nodes as sources of information. In use, each node publishes all the services it provides and allows other nodes that search for a resource or a match to access independently the published services. In the third approach, nodes share information with one another without using a central server and/or middle nodes that manage the traffic of messages between the nodes. The third approach provides a dynamic matchmaking process, wherein nodes may leave, reenter, and change their address without updating any other node of the system, such as a central server or a middle node. Such an approach can be implemented in an open MAS, wherein the number of agents is not fixed, the structure is not static and interactions and relationships between agents are not fixed.
An evaluation and a comparison analysis of these approaches are provided in D. Ben-Ami et al, Evaluation of distributed and centralized agent location mechanisms. In M. Klusch, S. Ossowski, and O. Shehory, editors, CIA, volume 2446 of Lecture Notes in Computer Science, pages 264.278, Springer, 2002, in D. Ben-Ami et al, A comparative evaluation of agent location mechanisms in large scale mas, in F. Dignum, V Dignum, S. Koenig, S. Kraus, M. P. Singh, and M. Wooldridge, editors, AAMAS, pages 339.346, ACM, 2005, and in I. Clarke, O. Sandberg, B. Wiley, and T. W. Hong. Freenet: A distributed anonymous information storage and retrieval system. Lecture Notes in Computer Science, 2009:46.66, 2001, the disclosures of which are incorporated herein by reference.